package edu.gdkm.threaddemo;

public class ShuYaZiThread extends Thread{
    //静态属性是全类共享属性
    static Integer count=0;
    //线程名字，可以通过重写构造方法直接配置给name属性（Thread类中的属性）
    public ShuYaZiThread(String name) {
        super(name);
    }
    //run方法是线程主体方法，必须重写。

    public void run() {
        //线程主体经常使用while(true)循环和Thread.sleep()相结合的写法，
        //循环实现线程的重复应用
        //休眠用于避免线程完全侵占系统资源
//        while (true){
       for(int i=0;i<100;i++){
            //如果一个数据被多个线程共享，则需要配置同步，以避免该数据被同时执行的线程污染。
           synchronized (count) {
               System.out.println(this.getName() + ":" + count++);
           }
            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }

    }
}
